<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns:ui="http://java.sun.com/jsf/facelets"
                template="/publico/template/templatePadrao.xhtml"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:p="http://primefaces.org/ui"
                xmlns:f="http://java.sun.com/jsf/core">

    <ui:define name="content">
        <h:form id="AvaliacaoWizard">

            <p:messages showDetail="true" showSummary="true"/>

            <p:wizard flowListener="#{avaliacaoBean.onFlowProcess}"
                      backLabel="Voltar"
                      nextLabel="Próximo">
                <p:tab id="busca" title="Busca">
                    <p:panel header="Selecione o currículo">
                        <h:panelGrid columns="2" >
                            <h:outputText value="Nome/E-mail: *"/>
                            <p:autoComplete
                                id="acMinLength" 
                                minQueryLength="3" 
                                value="#{avaliacaoBean.curriculo}"
                                var="curriculo"
                                completeMethod="#{avaliacaoBean.autoCompleteCurriculo}"
                                itemLabel="#{curriculo.nome}"
                                itemValue="#{curriculo}"
                                converter="curriculoConversor"/>
                        </h:panelGrid>
                    </p:panel>
                </p:tab>

                <p:tab id="orientacao" title="Orientação">
                    <p:panel header="Avaliação das Orientações">
                        <p:dataTable 
                            id="dtOrientacoes"
                            var="orientacao" value="#{avaliacaoBean.curriculo.orientacaoList}"
                            paginator="true" rows="6"
                            emptyMessage="Sem registro para a exibição.">

                            <p:column headerText="Aluno" filterBy="#{orientacao.aluno}">  
                                <h:outputText value="#{orientacao.aluno}"/>  
                            </p:column>  
                            <p:column headerText="Período Inicial" filterBy="#{orientacao.PInicial}">  
                                <h:outputText value="#{orientacao.PInicial}">
                                    <f:convertDateTime pattern="dd/MMM/yyyy"/>
                                </h:outputText>  
                            </p:column>  
                            <p:column headerText="Período Final" filterBy="#{orientacao.PFinal}">  
                                <h:outputText value="#{orientacao.PFinal}"> 
                                    <f:convertDateTime pattern="dd/MMM/yyyy"/>
                                </h:outputText>  
                            </p:column>  
                            <p:column headerText="Tipo de Orientação" filterBy="#{orientacao.tipoOrientacao}">  
                                <h:outputText value="#{orientacao.tipoOrientacao}"/>  
                            </p:column>  
                            <p:column headerText="Tipo de Bolsa" filterBy="#{orientacao.tipoBolsa}">  
                                <h:outputText value="#{orientacao.tipoOrientacao}"/>  
                            </p:column>  
                            <p:column headerText="Estrato">  
                                <h:outputText value="#{orientacao.estrato}"/>  
                            </p:column>  
                            <p:column headerText="Situação" filterBy="#{orientacao.avaliacao}">  
                                <h:outputText value="#{orientacao.avaliacao}"/>  
                            </p:column>  

                            <p:column headerText="Operações">  
                                <p:commandButton 
                                    ajax="false"
                                    icon="ui-icon-check"
                                    action="#{avaliacaoBean.confirmar()}"
                                    title="confirmar a produção">
                                    <f:setPropertyActionListener
                                        target="#{avaliacaoBean.producao}"
                                        value="#{orientacao}"/>
                                </p:commandButton>

                                <p:commandButton 
                                    title="corrigir a produção"
                                    icon="ui-icon-pencil"
                                    onclick="dialogConfir.show()">
                                    <f:setPropertyActionListener
                                        target="#{avaliacaoBean.producao}"
                                        value="#{orientacao}"/>
                                </p:commandButton>

                                <p:commandButton
                                    ajax="false"
                                    icon="ui-icon-close"
                                    action="#{avaliacaoBean.negar()}"
                                    title="negar produção"
                                    update="orientacao">
                                    <f:setPropertyActionListener
                                        target="#{avaliacaoBean.producao}"
                                        value="#{orientacao}"/>
                                </p:commandButton>

                                <p:commandButton 
                                    ajax="false"
                                    icon="ui-icon-document"
                                    action="#{avaliacaoBean.visualizarComprovante(orientacao.arquivo)}"
                                    onclick="this.form.target = '_blank'"
                                    title="visualizar o comprovante"/>
                            </p:column> 
                        </p:dataTable>
                    </p:panel>
                </p:tab>

                <p:tab id="livro" title="Livro">
                    <p:panel header="Avaliação de Livros">
                        <p:dataTable 
                            id="dtLivro"
                            value="#{avaliacaoBean.curriculo.livroList}"
                            var="livro"
                            paginator="true" rows="6"
                            emptyMessage="Sem registro para a exibição.">

                            <p:column headerText="Titulo" filterBy="#{livro.titulo}">  
                                <h:outputText value="#{livro.titulo}"/>  
                            </p:column>  
                            <p:column headerText="Autor" filterBy="#{livro.autor}">  
                                <h:outputText value="#{livro.autor}"/>  
                            </p:column>  
                            <p:column headerText="Ano" filterBy="#{livro.ano}">  
                                <h:outputText value="#{livro.ano}"/>  
                            </p:column>  
                            <p:column headerText="Estrato">  
                                <h:outputText value="#{livro.estrato}"/>  
                            </p:column>  
                            <p:column headerText="Situação" filterBy="#{livro.avaliacao}">  
                                <h:outputText value="#{livro.avaliacao}"/>  
                            </p:column>  

                            <p:column headerText="Operações">  
                                <p:commandButton
                                    ajax="false"
                                    icon="ui-icon-check"
                                    action="#{avaliacaoBean.confirmar()}"
                                    title="confirmar produção">
                                    <f:setPropertyActionListener
                                        target="#{avaliacaoBean.producao}"
                                        value="#{livro}"/>
                                </p:commandButton>

                                <p:commandButton 
                                    title="corrigir produção"
                                    icon="ui-icon-pencil"
                                    onclick="dialogConfir.show()">
                                    <f:setPropertyActionListener
                                        target="#{avaliacaoBean.producao}"
                                        value="#{livro}"/>
                                </p:commandButton>

                                <p:commandButton
                                    ajax="false"
                                    icon="ui-icon-close"
                                    action="#{avaliacaoBean.negar()}"
                                    title="negar produção"
                                    update="livro">
                                    <f:setPropertyActionListener
                                        target="#{avaliacaoBean.producao}"
                                        value="#{livro}"/>
                                </p:commandButton>

                                <p:commandButton 
                                    ajax="false"
                                    icon="ui-icon-document"
                                    action="#{avaliacaoBean.visualizarComprovante(orientacao.arquivo)}"
                                    onclick="this.form.target = '_blank'"
                                    title="visualizar o comprovante"/>
                            </p:column> 
                        </p:dataTable>
                    </p:panel>
                </p:tab>

                <p:tab id="periodico" title="Periódico">
                    <p:panel header="Avaliação de Periódicos">
                        <p:dataTable 
                            id="dtPeriodico"
                            var="periodico" value="#{avaliacaoBean.curriculo.periodicoList}"
                            paginator="true" rows="6"
                            emptyMessage="Sem registro para a exibição.">

                            <p:column headerText="Titulo" filterBy="#{periodico.titulo}">  
                                <h:outputText value="#{periodico.titulo}"/>  
                            </p:column>  
                            <p:column headerText="Autor" filterBy="#{periodico.autores}">  
                                <h:outputText value="#{periodico.autores}"/>  
                            </p:column>  
                            <p:column headerText="Ano de Publicação" filterBy="#{periodico.ano}">  
                                <h:outputText value="#{periodico.ano}"/>  
                            </p:column>  
                            <p:column headerText="Revista" filterBy="#{periodico.revista}">  
                                <h:outputText value="#{periodico.revista}"/>
                            </p:column>  
                            <p:column headerText="Estrato">  
                                <h:outputText value="#{periodico.estrato}"/>  
                            </p:column>  
                            <p:column headerText="Situação" filterBy="#{periodico.avaliacao}">  
                                <h:outputText value="#{periodico.avaliacao}"/>  
                            </p:column>  

                            <p:column headerText="Operações">  
                                <p:commandButton 
                                    ajax="false"
                                    icon="ui-icon-check"
                                    action="#{avaliacaoBean.confirmar()}"
                                    title="confirmar produção">
                                    <f:setPropertyActionListener
                                        target="#{avaliacaoBean.producao}"
                                        value="#{periodico}"/>
                                </p:commandButton>

                                <p:commandButton 
                                    title="Corrigir"
                                    icon="ui-icon-pencil"
                                    onclick="dialogConfir.show()">
                                    <f:setPropertyActionListener
                                        target="#{avaliacaoBean.producao}"
                                        value="#{periodico}"/>
                                </p:commandButton>

                                <p:commandButton
                                    ajax="false"
                                    icon="ui-icon-close"
                                    action="#{avaliacaoBean.negar()}"
                                    title="negar produção"
                                    update="periodico">
                                    <f:setPropertyActionListener
                                        target="#{avaliacaoBean.producao}"
                                        value="#{periodico}"/>
                                </p:commandButton>

                                <p:commandButton 
                                    ajax="false"
                                    icon="ui-icon-document"
                                    action="#{avaliacaoBean.visualizarComprovante(orientacao.arquivo)}"
                                    onclick="this.form.target = '_blank'"
                                    title="visualizar o comprovante"/>
                            </p:column> 
                        </p:dataTable>
                    </p:panel>
                </p:tab>
            </p:wizard>

            <p:dialog widgetVar="dialogConfir" header="Corrigir Pontuação">
                <p:panelGrid columns="2">
                    <h:outputText value="Estrato: "/>
                    <p:inputText value="#{avaliacaoBean.estratoTemp}"/>
                    
                    <p:commandButton 
                        value="Cancelar"
                        onclick="dialogConfir.hide()">
                    </p:commandButton>
                    
                    <p:commandButton 
                        ajax="false"
                        value="Corrigir"
                        action="#{avaliacaoBean.corrigir()}">
                    </p:commandButton>
                </p:panelGrid>
            </p:dialog>
        </h:form>
    </ui:define>
</ui:composition>

